//
//  AppController.h
//  MediaInfoGUI
//
//  Created by Olivier Larivain on 1/2/10.
//  Copyright 2010 __MyCompanyName__. All rights reserved.
//

#import <Cocoa/Cocoa.h>

#include "DetailLevel.h"

@class DocumentInfo;
@class MediaInfoController;
@class MediaInfoModel;

@interface AppController : NSObject
{
  IBOutlet NSWindow *window;
  
  IBOutlet NSView *simpleView;
  IBOutlet NSView *sheetView;
  IBOutlet NSView *HtmlView;
  IBOutlet NSView *treeView;
  IBOutlet NSView *textView;
  IBOutlet NSBox *viewStack;
  IBOutlet NSBox *progressBox;
  IBOutlet NSProgressIndicator *progressIndicator;
  
  IBOutlet NSTextField *audio2TextField;
  
  IBOutlet NSPopUpButton *fileDropDown;
  IBOutlet NSButton *allCheckBox;
  IBOutlet NSPanel *aboutWindow;
  IBOutlet NSWindow *preferencesWindow;

  NSWindowController *aboutWindowController;
  NSWindowController *preferencesWindowController;
  IBOutlet MediaInfoController *mediaInfoController;
  IBOutlet NSArrayController *documentInfosArrayController;
  
  IBOutlet MediaInfoModel *model;
  
  DetailLevel currentDetailLevel;
  NSOperationQueue *queue;
}

- (IBAction) open:(id) sender;
- (void) openURLs: (NSArray *) URLs;
- (void) openFilenames: (NSArray *) files;
- (IBAction) about:(id) sender;
- (IBAction) preferences:(id) sender;
- (IBAction) openDonateURL:(id) sender;
- (void) setViewMode:(DetailLevel) mode;
- (void) documentSelectionChanged:(id) sender;
- (void) allCheckBoxClicked:(id) sender;
- (void) loadFinished;

@end
